leetcodeJS

Personal solution for leetcode problem using Javascript

View on GitHub

Problem

There are n employees in a company, numbered from 0 to n - 1. Each employee i has worked for hours[i] hours in the company.

The company requires each employee to work for at least target hours.

You are given a 0-indexed array of non-negative integers hours of length n and a non-negative integer target.

Return the integer denoting the number of employees who worked at least target hours.

Example 1:

Input: hours = [0,1,2,3,4], target = 2 Output: 3 Explanation: The company wants each employee to work for at least 2 hours.

Example 2:

Input: hours = [5,1,4,2,2], target = 6 Output: 0 Explanation: The company wants each employee to work for at least 6 hours. There are 0 employees who met the target.

Constraints:

1 <= n == hours.length <= 50 0 <= hours[i], target <= 105

Pre analysis

This is simple filtering problem, just need to iterate over each element and check if it is greater than target, if yes, increment count

Another solution

/**
 * @param {number[]} hours
 * @param {number} target
 * @return {number}
 */
var numberOfEmployeesWhoMetTarget = function (hours, target) {
  let count = 0;
  for (let i = 0; i < hours.length; i++) {
    if (hours[i] >= target) {
      count++;
    }
  }
  return count;
};